
#pragma once

#include "base/core/singleton.h"
#include "Common/TableDefine.h"


class BlockBlockCfg : public ManualSingleton <BlockBlockCfg>
{
	friend ManualSingleton <BlockBlockCfg>;
public:
	BlockBlockCfg();
	~BlockBlockCfg();
	bool Init(const char *szCfgFile, const char *szSplitChar);
	bool UnInit();
	void Clear();
	const BlockBlockCfgInfo *GetBlockBlockCfgInfo(int32_t id);
	const BlockBlockCfgMap *GetBlockBlockCfgMap() { return &m_BlockBlockCfgMap; }
private:
	BlockBlockCfgMap m_BlockBlockCfgMap;
};

#define  g_MakeBlockBlockCfgTable() (BlockBlockCfg::Instance())
#define  g_GetBlockBlockCfgTable() (BlockBlockCfg::GetInstance())
#define  g_DelBlockBlockCfgTable() (BlockBlockCfg::Destroy())